关于
I. Spring Framework 总览
开始
介绍 Spring Framework
依赖注入和控制反转
模块
使用场景
II. Spring Framework 4.x 新特性
Spring Framework 4.0中的新功能和增强功能
改进的入门体验
移除不推荐的包和方法
Java 8(以及6和7)
Java EE 6 和 7
Groovy Bean Definition DSL
核心容器改进
常规Web改进
WebSocket, SockJS, 和 STOMP 消息
测试改进
Spring Framework 4.1中的新功能和增强功能
JMS 改进
缓存改进
Web 改进
WebSocket STOMP 消息 改进
测试 改进
Spring Framework 4.2中的新功能和增强功能
核心容器改进
数据访问改进
JMS 改进
Web 改进
WebSocket 消息改进
测试改进
Spring Framework 4.3中的新功能和增强功能
III. 核心技术
IoC 容器
介绍 Spring IoC 容器和 bean
容器总览
Bean 总览
依赖
Bean作用域
定制Bean的回调函数
6.7. Bean definition inheritance
6.8. Container Extension Points
[5.10. Classpath scanning and managed components]
[5.11. Using JSR 330 Standard Annotations]
[5.12. Java-based container configuration]
[5.13. Environment abstraction]
[5.14. Registering a LoadTimeWeaver]
[5.15. Additional Capabilities of the ApplicationContext]
[5.16. The BeanFactory]
[6. Resources]
[6.1. Introduction]
[6.2. The Resource interface]
[6.3. Built-in Resource implementations]
[6.4. The ResourceLoader]
[6.5. The ResourceLoaderAware interface]
[6.6. Resources as dependencies]
[6.7. Application contexts and Resource paths]
[7. Validation, Data Binding, and Type Conversion]
[7.1. Introduction]
[7.2. Validation using Spring’s Validator interface]
[7.3. Resolving codes to error messages]
[7.4. Bean manipulation and the BeanWrapper]
[7.5. Spring Type Conversion]
[7.6. Spring Field Formatting]
[7.7. Configuring a global date & time format]
[7.8. Spring Validation]
[Spring Expression Language-SpEL]
[8.1. Introduction]
[8.2. Feature Overview]
[8.3. Expression Evaluation using Spring’s Expression Interface]
[8.4. Expression support for defining bean definitions]
[8.5. Language Reference]
[8.6. Classes used in the examples]
[Spring AOP 编程]
[10.1. Introduction]
[10.2. @AspectJ support]
[9.3. Schema-based AOP support]
[9.4. Choosing which AOP declaration style to use]
[9.5. Mixing aspect types]
[9.6. Proxying mechanisms]
[9.7. Programmatic creation of @AspectJ Proxies]
[9.8. Using AspectJ with Spring applications]
[9.9. Further Resources]
[10. Spring AOP APIs]
[10.1. Introduction]
[10.2. Pointcut API in Spring]
[10.3. Advice API in Spring]
[10.4. Advisor API in Spring]
[10.5. Using the ProxyFactoryBean to create AOP proxies]
[10.6. Concise proxy definitions]
[10.7. Creating AOP proxies programmatically with the ProxyFactory]
[10.8. Manipulating advised objects]
[10.9. Using the "auto-proxy" facility]
[10.10. Using TargetSources]
[10.11. Defining new Advice types]
[10.12. Further resources]
[11. Testing]
[11.1. Introduction to Spring Testing]
[11.2. Unit Testing]
[11.3. Integration Testing]
[11.4. Further Resources]
[IV. 数据访问]
[12. Transaction Management]
[12.1. Introduction to Spring Framework transaction management]
[12.2. Advantages of the Spring Framework’s transaction support model]
[12.3. Understanding the Spring Framework transaction abstraction]
[12.4. Synchronizing resources with transactions]
[12.5. Declarative transaction management]
[12.6. Programmatic transaction management]
[12.7. Choosing between programmatic and declarative transaction management]
[12.8. Application server-specific integration]
[12.9. Solutions to common problems]
[12.10. Further Resources]
[13. DAO support]
[13.1. Introduction]
[13.2. Consistent exception hierarchy]
[13.3. Annotations used for configuring DAO or Repository classes]
[14. Data access with JDBC]
[14.1. Introduction to Spring Framework JDBC]
[14.2. Using the JDBC core classes to control basic JDBC processing and error handling]
[14.3. Controlling database connections]
[14.4. JDBC batch operations]
[14.5. Simplifying JDBC operations with the SimpleJdbc classes]
[14.6. Modeling JDBC operations as Java objects]
[14.7. Common problems with parameter and data value handling]
[14.8. Embedded database support]
[14.9. Initializing a DataSource]
[15. 对象关系映射(ORM)数据访问]
[15.1. Spring 中的 ORM]
[15.2. 常见的 ORM 集成方面的注意事项]
[15.3. Hibernate]
[15.4. JDO]
[15.5. JPA]
[16. Marshalling XML using O/X Mappers]
[16.1. Introduction]
[16.2. Marshaller and Unmarshaller]
[16.3. Using Marshaller and Unmarshaller]
[16.4. XML Schema-based Configuration]
[16.5. JAXB]
[16.6. Castor]
[16.7. XMLBeans]
[16.8. JiBX]
[16.9. XStream]
[V. The Web]
[17. Web MVC framework]
[17.1. Introduction to Spring Web MVC framework]
[17.2. The DispatcherServlet]
[17.3. Implementing Controllers]
[17.4. Handler mappings]
[17.5. Resolving views]
[17.6. Using flash attributes]
[17.7. Building URIs]
[17.8. Using locales]
[17.9. Using themes]
[17.10. Spring’s multipart (file upload) support]
[17.11. Handling exceptions]
[17.12. Web Security]
[17.13. Convention over configuration support]
[17.14. ETag support]
[17.15. Code-based Servlet container initialization]
[17.16. Configuring Spring MVC]
[18. View technologies]
[18.1. Introduction]
[18.2. JSP & JSTL]
[18.3. Tiles]
[18.4. Velocity & FreeMarker]
[18.5. XSLT]
[18.6. Document views (PDF/Excel)]
[18.7. JasperReports]
[18.8. Feed Views]
[18.9. XML Marshalling View]
[18.10. JSON Mapping View]
[18.11. XML Mapping View]
[19. Integrating with other web frameworks]
[19.1. Introduction]
[19.2. Common configuration]
[19.3. JavaServer Faces 1.2]
[19.4. Apache Struts 2.x]
[19.5. Tapestry 5.x]
[19.6. Further Resources]
[20. Portlet MVC Framework]
[20.1. Introduction]
[20.2. The DispatcherPortlet]
[20.3. The ViewRendererServlet]
[20.4. Controllers]
[20.5. Handler mappings]
[20.6. Views and resolving them]
[20.7. Multipart (file upload) support]
[20.8. Handling exceptions]
[20.9. Annotation-based controller configuration]
[20.10. Portlet application deployment]
[21. WebSocket Support]
[21.1. Introduction]
[21.2. WebSocket API]
[21.3. SockJS Fallback Options]
[21.4. STOMP Over WebSocket Messaging Architecture]
[VI. Integration]
[22. Remoting and web services using Spring]
[22.1. Introduction]
[22.2. Exposing services using RMI]
[22.3. Using Hessian or Burlap to remotely call services via HTTP]
[22.4. Exposing services using HTTP invokers]
[22.5. Web services]
[22.6. JMS]
[22.7. AMQP]
[22.8. Auto-detection is not implemented for remote interfaces]
[22.9. Considerations when choosing a technology]
[22.10. Accessing RESTful services on the Client]
[23. Enterprise JavaBeans (EJB) integration]
[23.1. Introduction]
[23.2. Accessing EJBs]
[23.3. Using Spring’s EJB implementation support classes]
[24. JMS (Java Message Service)]
[24.1. Introduction]
[24.2. Using Spring JMS]
[24.3. Sending a Message]
[24.4. Receiving a message]
[24.5. Support for JCA Message Endpoints]
[24.6. Annotation-driven listener endpoints]
[24.7. JMS Namespace Support]
[25. JMX]
[25.1. Introduction]
[25.2. Exporting your beans to JMX]
[25.3. Controlling the management interface of your beans]
[25.4. Controlling the ObjectNames for your beans]
[25.5. JSR-160 Connectors]
[25.6. Accessing MBeans via Proxies]
[25.7. Notifications]
[25.8. Further Resources]
[26. JCA CCI]
[26.1. Introduction]
[26.2. Configuring CCI]
[26.3. Using Spring’s CCI access support]
[26.4. Modeling CCI access as operation objects]
[26.5. Transactions]
[27. Email]
[27.1. Introduction]
[27.2. Usage]
[27.3. Using the JavaMail MimeMessageHelper]
[28. Task Execution and Scheduling]
[28.1. Introduction]
[28.2. The Spring TaskExecutor abstraction]
[28.3. The Spring TaskScheduler abstraction]
[28.4. Annotation Support for Scheduling and Asynchronous Execution]
[28.5. The Task Namespace]
[28.6. Using the Quartz Scheduler]
[29. Dynamic language support]
[29.1. Introduction]
[29.2. A first example]
[29.3. Defining beans that are backed by dynamic languages]
[29.4. Scenarios]
[29.5. Bits and bobs]
[29.6. Further Resources]
[30. Cache Abstraction]
[30.1. Introduction]
[30.2. Understanding the cache abstraction]
[30.3. Declarative annotation-based caching]
[30.4. JCache (JSR-107) annotations]
[30.5. Declarative XML-based caching]
[30.6. Configuring the cache storage]
[30.7. Plugging-in different back-end caches]
[30.8. How can I set the TTL/TTI/Eviction policy/XXX feature?]
[VII. Appendices]
[31. Migrating to Spring Framework 4.0]
[32. Classic Spring Usage]
[32.1. Classic ORM usage]
[32.2. Classic Spring MVC]
[32.3. JMS Usage]
[33. Classic Spring AOP Usage]
[33.1. Pointcut API in Spring]
[33.2. Advice API in Spring]
[33.3. Advisor API in Spring]
[33.4. Using the ProxyFactoryBean to create AOP proxies]
[33.5. Concise proxy definitions]
[33.6. Creating AOP proxies programmatically with the ProxyFactory]
[33.7. Manipulating advised objects]
[33.8. Using the "autoproxy" facility]
[33.9. Using TargetSources]
[33.10. Defining new Advice types]
[33.11. Further resources]
[34. XML Schema-based configuration]
[34.1. Introduction]
[34.2. XML Schema-based configuration]
[35. Extensible XML authoring]
[35.1. Introduction]
[35.2. Authoring the schema]
[35.3. Coding a NamespaceHandler]
[35.4. BeanDefinitionParser]
[35.5. Registering the handler and the schema]
[35.6. Using a custom extension in your Spring XML configuration]
[35.7. Meatier examples]
[35.8. Further Resources]
[36. spring.tld]
[36.1. Introduction]
[36.2. the bind tag]
[36.3. the escapeBody tag]
[36.4. the hasBindErrors tag]
[36.5. the htmlEscape tag]
[36.6. the message tag]
[36.7. the nestedPath tag]
[36.8. the theme tag]
[36.9. the transform tag]
[36.10. the url tag]
[36.11. the eval tag]
[37. spring-form.tld]
[37.1. Introduction]
[37.2. the checkbox tag]
[37.3. the checkboxes tag]
[37.4. the errors tag]
[37.5. the form tag]
[37.6. the hidden tag]
[37.7. the input tag]
[37.8. the label tag]
[37.9. the option tag]
[37.10. the options tag]
[37.11. the password tag]
[37.12. the radiobutton tag]
[37.13. the radiobuttons tag]
[37.14. the select tag]
[37.15. the textarea tag]
Published with GitBook
JMS 改进
JMS 改进
autoStartup 属性可以通过 JmsListenerContainerFactory 进行控制
应答类型 Destination 可以配置在每个监听器容器
@SendTo 的值可以用 SpEL 表达式
响应目的地可以通过 JmsResponse 在
运行时计算
@JmsListener 是可以可以重复的注解用于声明多个 JMS 容器在相同的方法上 (若你还没有用上 Java8 请使用新引入的 @JmsListeners)。
results matching "
"
No results matching "
"